Language Model Tool
data class LanguageModelTool(val name: String, val description: String, val parametersSchemaJson: String, val providerExecuted: Boolean = false, val metadata: Map<String, JsonElement> = emptyMap(), val strict: Boolean = true, val providerOptions: Map<String, JsonElement> = emptyMap())
Tool advertisement at the model surface — the JSON-schema shape the provider needs. Distinct from the application-side Tool which carries a Kotlin executor; this is the wire shape that crosses into a provider.